<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <title>开始使用 layui</title>
    <link rel="stylesheet" href="./layui/css/layui.css">
   <style>
       #loginFormDiv {
           margin: 100px auto;
           padding: 20px 20px 20px 20px ;
           width: 600px;
           border: solid 1px #59c4e3;
           box-shadow: 4px 6px 4px 3px #a6a6ef;
       }
   </style>
</head>
<body>

<div id="loginFormDiv">
<!-- 你的 HTML 代码 -->
<form class="layui-form" action="" lay-filter="example" id="registForm">

    <div class="layui-form-item">
        <label class="layui-form-label">用户名</label>
        <div class="layui-input-block">
            <input type="text" id="username" name="username" lay-verify="username" autocomplete="off" placeholder="请输入标题" class="layui-input">
            <span id="checkname"></span>
        </div>
    </div>

    <div class="layui-form-item">
        <label class="layui-form-label">密码框</label>
        <div class="layui-input-block">
            <input type="password" name="password" lay-verify="password" placeholder="请输入密码" autocomplete="off" class="layui-input">
        </div>
    </div>

    <div class="layui-form-item">
        <label class="layui-form-label">单选框</label>
        <div class="layui-input-block">
            <input type="radio" name="sex" value="1" title="男" checked="">
            <input type="radio" name="sex" value="0" title="女">
        </div>
    </div>

    <div class="layui-form-item">
        <label class="layui-form-label">生日</label>
        <div class="layui-input-inline">
            <input type="text" name="birthday" id="birthday" lay-verify="date" placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
        </div>
    </div>

    <div class="layui-form-item">
        <div class="layui-inline">
            <label class="layui-form-label">文件上传</label>
            <div class="layui-input-inline">
                <input type="file" name="file1" class="layui-btn layui-btn-normal">
            </div>
        </div>
    </div>
    <div class="layui-form-item">
        <label class="layui-form-label">验证码</label>
        <div class="layui-input-inline">
            <input type="text" name="capchar" autocomplete="off" placeholder="请输入验证码" class="layui-input">
        </div>
        <div class="layui-input-inline">
            <img src="/hutoolcap" style="width:85px;height: 38px" id="cap"/>
        </div>
    </div>

    <div class="layui-form-item">
        <div class="layui-input-block">
            <button type="submit" class="layui-btn" lay-submit="" lay-filter="loginBtn">立即提交</button>
            <button type="reset" class="layui-btn layui-btn-primary">重置</button>
        </div>
    </div>

</form>
</div>
<script src="./layui/layui.js"></script>
<script>
    layui.use( function(){
        var layer = layui.layer
            ,form = layui.form;

        var $ = layui.$;
        var laydate = layui.laydate;

        //日期
        laydate.render({
            elem: '#birthday'
        });

        // 注册图片的单击事件
        $("#cap").click(function () {
            path = "/captcha?"+new Date().getTime();
            $(this).attr("src",path);
        });

        //表单数据项的验证规则
        form.verify({
            username : function(value){
                if(value.length < 5){
                    return '标题至少得5个字符啊';
                }
            }
            ,password: [
                /^[\S]{6,12}$/
                ,'密码必须6到12位，且不能出现空格'
            ]

        });


        //监听表单提交
        form.on('submit(loginBtn)', function(data){

            // 获取包含了上午文件的表单的所有信息
            var formDate = new FormData(document.getElementById("registForm"));


            // 发ajax请求
            $.ajax({
                url:"/user/regist",
                data:formDate,
                type:"post",
                // 使用ajax请求去上传文件需要把如下两个属性设置为false，固定写法
                processData:false,
                contentType:false,
                success: function(result){
                    console.log(result);
                    // 登录成功进行页面跳转
                    if(result.code == "1"){
                        window.location = "/login.html";
                    }else{
                        // 登录失败给出提示信息
                        layer.alert(result.message, {
                            title: '提示信息'
                        });
                    }
                },
                error:function (result) {
                    console.log(result);
                    // 登录失败给出提示信息
                    layer.alert(result.message, {
                        title: '提示信息'
                    });
                }
            });


            // 注意，这里要return  false ，取消表单提交的默认行为 （往action对应的url发送请求 ）
            return false;
        });

        // 给用户名输入框注册光标移开事件
        $("#username").blur(function () {

            var username =  $("#username").val();

            // 发ajax请求
            $.ajax({
                url:"/user/checkusername?username="+username,
                type:"get",
                success: function(result){

                    if(result.code == "1"){

                    }else{
                        // 用户名重复
                        // layer.alert(result.message, {
                        //     title: '提示信息',
                        //
                        // });
                        // layer.open({
                        //     type: 1,
                        //     content: result.message, //这里content是一个普通的String
                        //     area:['500px', '400px'],
                        //     btn: ['提交', '取消'],
                        //     yes: function (index, layero) {
                        //         // alert(result.message);
                        //         // 让光标再次停留到 用户名输入框
                        //
                        //     }
                        // });
                        $("#checkname").text(result.message);

                        $("#username").focus();

                    }
                },
                error:function (result) {
                    console.log(result);
                    // 登录失败给出提示信息
                    layer.alert(result.message, {
                        title: '提示信息'
                    });
                }
            });

        });

        // layer.msg('Hello World');
    });
</script>


</body>
</html>
